﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;

namespace PRE.Login
{
    public partial class FrmChangePass : DevExpress.XtraEditors.XtraForm
    {
        DAL.EntitesDAL.ThanhvienDAL _dal = new DAL.EntitesDAL.ThanhvienDAL();
        BLL.EntitiesBLL.ThanhvienBLL _bll = new BLL.EntitiesBLL.ThanhvienBLL();
        public string _User;
        public static bool a,b,c; 

        public FrmChangePass()
        {
            InitializeComponent();
        }

        private void FrmChangePass_Load(object sender, EventArgs e)
        {
            txtPass.Focus();
        }

        private void txtPass_Leave(object sender, EventArgs e)
        {
            string pass = _bll.EncodeMD5(txtPass.Text);
            var ok = _bll.CheckPass(_User,pass);
            if (ok)
            {
                lb1.Visible = true;
                lb1.Text = "Mật khẩu đúng";
            }
            else
            {
                lb1.Visible = true;
                lb1.Text = "Mật khẩu không đúng, xin nhập lại ...";
                txtPass.Focus();
            }
        }

        private void txtPassAgain_Leave(object sender, EventArgs e)
        {
            if (txtPassNew.Text != txtPassAgain.Text)
            {
                lb2.Visible = true;
                lb2.Text = "Mật khẩu mới và xác nhận mật khẩu phải giống";
                txtPassAgain.Focus();
                a = false;
            }
            else
            {
                a = true;
                lb2.Visible = false;
            }
        }

        private void txtPassNew_Validating(object sender, CancelEventArgs e)
        {
            if (txtPassNew.Text + "" == "")
            {
                dxEP.SetError(txtPassNew, "Xin mời bạn nhập mật khẩu mới");
                b = false;
            }
            else
            {
                dxEP.SetError(txtPassNew, "");
                b = true;
            }
        }

        private void txtPassAgain_Validating(object sender, CancelEventArgs e)
        {
            if (txtPassAgain.Text + "" == "")
            {
                dxEP.SetError(txtPassAgain, "Xin bạn hãy xác nhận mật khẩu 1 lần nữa");
                c = false;
            }
            else
            {
                dxEP.SetError(txtPassAgain, "");
                c = true;
            }
        }

        private void btnOk_Click(object sender, EventArgs e)
        {
            if (a && b && c)
            {
                string pass = _bll.EncodeMD5(txtPassNew.Text);
                var ok = _dal.Update(_User, pass);

                if (ok)
                {
                    DialogResult result = XtraMessageBox.Show("Đổi mật khẩu thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    if (result == DialogResult.OK) this.Close();
                }
                else
                {
                    DialogResult result = XtraMessageBox.Show("Không đổi mật khẩu được", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    txtPassNew.Focus();
                }
            }
            else
            {
                DialogResult result = XtraMessageBox.Show("Dữ liệu sai hoặc chưa điền đầy đủ thông tin", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}